#include <stdlib.h>
#include <iostream>

#include "../include/LecteurCaractere.h"

using namespace std;

LecteurCaractere::LecteurCaractere(string nomFich) : m_f(nomFich.data())
{
    this->m_ligne = 1;
    this->m_colonne = 0;
    if(this->m_f.fail())
    {
        cout << "Fichier \"" << nomFich << "\" non trouve." << endl;
        exit(0);    // plus tard on levera une exception
    }
    else
    {
        this->suivant();
    }
}

void LecteurCaractere::suivant()
{
    if(this->m_f.peek() == EOF)
    {
        this->m_carCour = EOF;
    }
    else
    {
        if(this->m_carCour == '\n')
        {
            this->m_colonne = 0;
            this->m_ligne++;
        }
        this->m_f.get(this->m_carCour);
        this->m_colonne++;
    }
}
